NokaBox = {};
NokaBox.box =function(){
		var j,m,b,g,v,p=0;
		return{
			show:function(o){
				v={stopclose:false,opacity:70,close:1,animate:0,fixed:1,mask:1,maskid:'',boxid:'',topsplit:2,url:0,post:0,height:0,width:0,cdiv:true,html:0,image:0,iframe:0,title:'',showtitle:false};
				try{
					v.opacity=(undefined != o.opacity?o.opacity:v.opacity);
					v.close=(undefined != o.close?o.close:v.close);
					v.animate=(undefined != o.animate?o.animate:v.animate);
					v.fixed=(undefined != o.fixed?o.fixed:v.fixed);
					v.mask=(undefined != o.mask?o.mask:v.mask);
					v.maskid=(undefined != o.maskid?o.maskid:v.maskid);
					v.boxid=(undefined != o.boxid?o.boxid:v.boxid);
					v.topsplit=(undefined != o.topsplit?o.topsplit:v.topsplit);
					v.url=(undefined != o.url?o.url:v.url);
					v.post=(undefined != o.post?o.post:v.post);
					v.height=(undefined != o.height?o.height:v.height);
					v.width=(undefined != o.width?o.width:v.width);
					v.html=(undefined != o.html?o.html:v.html);
					v.iframe=(undefined != o.iframe?o.iframe:v.iframe);
					v.title=(undefined != o.title?o.title:v.title);
					v.showtitle=(undefined != o.showtitle?o.showtitle:v.showtitle);
					v.image=(undefined != o.image?o.image:v.image);
					v.cdiv=(undefined != o.cdiv?o.cdiv:true);
					v.autohide = (undefined != o.autohide?o.autohide:0);
					v.close = (undefined != o.close?o.close:0);
					v.maskid=(undefined != o.maskid?o.maskid:v.maskid);
					v.openjs = (undefined != o.openjs?o.openjs:v.openjs);
					v.closejs= (undefined != o.closejs?o.closejs:v.closejs);
					v.top= (undefined != o.top?o.top:v.top);
					v.left= (undefined != o.left?o.left:v.left);
					v.stopclose = (undefined == o.stopclose?false:o.stopclose);
				}catch(e){};
				//-----------------------------------
				try{
					j=$(v.boxid+'_tbox');
					p=$(v.boxid+'_tinner');
					b=$(v.boxid+'_tcontent');
					m=$(v.boxid+'_tmask');
					g=$(v.boxid+'_tclose');
				}catch(e){}
				//-------------------------------------
				if(!p){//没有找到就创建
					j=document.createElement('div'); j.className='tbox'; j.style.zIndex='9999999';
					p=document.createElement('div'); p.className='tinner '+v.boxid;
					b=document.createElement('div'); b.className='tcontent';
					m=document.createElement('div'); m.className='tmask';m.style.zIndex='999999';
					g=document.createElement('div');
					
					document.body.appendChild(m); 
					document.body.appendChild(j); 
					j.appendChild(p);
					p.appendChild(b);
					if('success'!=v.boxid && 'error'!=v.boxid){
						j.appendChild(g);
					}
					j.id=v.boxid+'_tbox';
					p.id=v.boxid+'_tinner';
					b.id=v.boxid+'_tcontent';
					m.id=v.boxid+'_tmask';
					if(undefined!=g){
						 g.className='tclose'; 
						 g.id=v.boxid+'_tclose';
						 g.v=0;
					}
				}
				//-----------------------------------
				if(p){
					
					if(undefined!=m){
						if(!v.stopclose){
							m.onclick=NokaBox.box.hide;
						}
					}
					if(undefined!=g){
						g.onclick=NokaBox.box.hide;
					}
					window.onresize=NokaBox.box.resize;
				}
				if(undefined!=g){
					if(!v.showtitle){
						g.style.display='none';
					}else{
						g.style.display='';
						g.v=0;
					}
				}
				j.style.position=v.fixed?'fixed':'absolute';
				if(v.html&&!v.animate){
					p.style.backgroundImage='none'; 
					b.style.display='';
					p.style.width=v.width?v.width+'px':'auto'; p.style.height=v.height?v.height+'px':'auto'
				}else{
					b.style.display='none'; 
					if(!v.animate&&v.width&&v.height){
						p.style.width=v.width+'px'; p.style.height=v.height+'px'
					}else{
						p.style.width=p.style.height='100px'
					}
				}
				if(v.mask){this.mask(); this.alpha(m,1,v.opacity)}else{this.alpha(j,1,100)}
				if(v.autohide){
					p.ah=setTimeout(NokaBox.box.hide,1000*v.autohide)
				}else{
					if(!v.stopclose){
						document.onkeyup=NokaBox.box.esc;
					}
				}
			},
			fill:function(c,u,k,a,w,h){
				if(u){
					if(v.image){
						var i=new Image(); i.onload=function(){w=w||i.width; h=h||i.height; NokaBox.box.psh(i,a,w,h)}; i.src=v.image
					}else if(v.iframe){
						this.psh('<iframe src="'+v.iframe+'" name="'+v.boxid+'_iframe" id="'+v.boxid+'_iframe" width="'+v.width+'" frameborder="0" height="'+(v.showtitle?v.height-46:v.height)+'"></iframe>',a,w,h)
					}else{
						var x=window.XMLHttpRequest?new XMLHttpRequest():new ActiveXObject('Microsoft.XMLHTTP');
						x.onreadystatechange=function(){
							if(x.readyState==4&&x.status==200){p.style.backgroundImage=''; NokaBox.box.psh(x.responseText,a,w,h)}
						};
						if(k){
	    	            	x.open('POST',c,true); x.setRequestHeader('Content-type','application/x-www-form-urlencoded'); x.send(k)
						}else{
	       	         		x.open('GET',c,true); x.send(null)
						}
					}
				}else{
					this.psh(c,a,w,h)
				}
			},
			psh:function(c,a,w,h){
				if(typeof c=='object'){
					b.innerHTML='';
					b.appendChild(c);
				}else{
					if(v.cdiv){
						var t ='<div class="tiny_title" id="'+v.boxid+'_tite" >'+(undefined==v.title?'':v.title)+'</div>';
						if(!v.showtitle){
							t='';
						}
						if('success'==v.boxid || 'error'==v.boxid){
							b.innerHTML=c;
						}else{
							b.innerHTML=t+c;
						}
					}
				}
				var x=p.style.width, y=p.style.height;
				if(!w||!h){
					p.style.width=w?w+'px':''; p.style.height=h?h+'px':''; b.style.display='';
					if(!h){h=parseInt(b.offsetHeight)}
					if(!w){w=parseInt(b.offsetWidth)}
					b.style.display='none'
				}
				p.style.width=x; p.style.height=y;
				this.size(w,h,a)
			},
			esc:function(e){e=e||window.event; if(e.keyCode==27){NokaBox.box.hide()}},
			hide:function(){
				NokaBox.box.alpha(j,-1,0,3);
				document.onkeypress=null; 
				if(v.closejs){
					v.closejs()
				}},
			resize:function(){NokaBox.box.pos(); NokaBox.box.mask()},
			mask:function(){m.style.height=this.total(1)+'px'; m.style.width=this.total(0)+'px'},
			pos:function(){
				var t;
				if(typeof v.top!='undefined'){t=v.top}else{t=(this.height()/v.topsplit)-(j.offsetHeight/2); t=t<20?20:t}
				if(!v.fixed&&!v.top){t+=this.top()}
				j.style.top=t+'px'; 
				j.style.left=typeof v.left!='undefined'?v.left+'px':(this.width()/2)-(j.offsetWidth/2)+'px'
			},
			alpha:function(e,d,a){
				clearInterval(e.ai);
				if(d){e.style.opacity=0; e.style.filter='alpha(opacity=0)'; e.style.display='block'; NokaBox.box.pos()}
				e.ai=setInterval(function(){NokaBox.box.ta(e,a,d)},20)
			},
			ta:function(e,a,d){
				var o=Math.round(e.style.opacity*100);
				if(o==a){
					clearInterval(e.ai);
					if(d==-1){
						e.style.display='none';
						e==j?NokaBox.box.alpha(m,-1,0,2):p.style.backgroundImage='';
					}else{
						if(e==m){
							this.alpha(j,1,100)
						}else{
							j.style.filter='';
							NokaBox.box.fill(v.html||v.url,v.url||v.iframe||v.image,v.post,v.animate,v.width,v.height)
						}
					}
				}else{
					var n=a-Math.floor(Math.abs(a-o)*.5)*d;
					e.style.opacity=n/100; e.style.filter='alpha(opacity='+n+')'
				}
			},
			size:function(w,h,a){
				if(a){
					clearInterval(p.si); var wd=parseInt(p.style.width)>w?-1:1, hd=parseInt(p.style.height)>h?-1:1;
					p.si=setInterval(function(){NokaBox.box.ts(w,wd,h,hd)},20)
				}else{
					p.style.backgroundImage='none'; if(v.close){p.appendChild(g); g.v=1}
					p.style.width=w+'px'; p.style.height=h+'px'; b.style.display=''; this.pos();
					if(v.openjs){v.openjs()}
				}
			},
			ts:function(w,wd,h,hd){
				var cw=parseInt(p.style.width), ch=parseInt(p.style.height);
				if(cw==w&&ch==h){
					clearInterval(p.si); p.style.backgroundImage='none'; b.style.display='block'; if(v.close){p.appendChild(g); g.v=1}
					if(v.openjs){v.openjs()}
				}else{
					if(cw!=w){p.style.width=(w-Math.floor(Math.abs(w-cw)*.6)*wd)+'px'}
					if(ch!=h){p.style.height=(h-Math.floor(Math.abs(h-ch)*.6)*hd)+'px'}
					this.pos()
				}
			},
			top:function(){return document.documentElement.scrollTop||document.body.scrollTop},
			width:function(){return self.innerWidth||document.documentElement.clientWidth||document.body.clientWidth},
			height:function(){return self.innerHeight||document.documentElement.clientHeight||document.body.clientHeight},
			total:function(d){
				var b=document.body, e=document.documentElement;
				return d?Math.max(Math.max(b.scrollHeight,e.scrollHeight),Math.max(b.clientHeight,e.clientHeight)):
				Math.max(Math.max(b.scrollWidth,e.scrollWidth),Math.max(b.clientWidth,e.clientWidth))
			}
		}
	}();